package com.snj.test2507;

import java.io.File;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.UUID;

public class DynamicPathExample {

    public static void main(String[] args) {
        // 获取当前日期和时间
        LocalDateTime now = LocalDateTime.now();

        // 格式化日期为年月日，用于目录和文件名
        DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyMMdd");
        String dateDir = now.format(dateFormatter);

        // 格式化时间为时分秒，用于文件名
        DateTimeFormatter timeFormatter = DateTimeFormatter.ofPattern("HHmmssSSS");
        String time = now.format(timeFormatter);

        // 生成UUID
        String uuid = UUID.randomUUID().toString().replace("-", "");

        // 构建动态路径
        String basePath = "D:/downloadAll/png/";
        String fullDirPath = basePath + dateDir; // 完整目录路径
        String dynamicPath = fullDirPath + "/" + dateDir + time + "_" + uuid + ".png"; // 完整文件路径

        // 创建文件夹（如果不存在）
        File dir = new File(fullDirPath);
        if (!dir.exists()) {
            boolean isCreated = dir.mkdirs(); // 创建文件夹（包括父目录）
            if (isCreated) {
                System.out.println("文件夹创建成功: " + fullDirPath);
            } else {
                System.out.println("文件夹创建失败: " + fullDirPath);
                return; // 如果文件夹创建失败，直接退出
            }
        }

        // 输出动态路径
        System.out.println("Dynamic Path: " + dynamicPath);
    }
}